package com.show.utils;

import org.springframework.core.convert.converter.Converter;
import org.springframework.util.StringUtils;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

// 字符对象转换为日期对象  自定义类需要实现转换器接口 需要制定两个转换对象类型
public class StingToDateConvert implements Converter<String,Date> {

    @Override
    public Date convert(String source) {
        // 先做判断传入是否为空
        if (StringUtils.isEmpty(source)){
            // 为空则抛出异常
            throw new RuntimeException("数据源为空");
        }
        try {
            // 返回转换后的日期对象
            return new SimpleDateFormat("yyyy-MM-dd").parse(source);
        } catch (ParseException e) {
            // 抛出格式异常
            throw new RuntimeException("仅支持日期格式为 yyyy-MM-dd 的`转换");
        }
    }
}
